_BUS_HANDLER

//0xb8 bytes (sizeof) struct _BUS_HANDLER { ULONG Version; //0x0 enum _INTERFACE_TYPE InterfaceType; //0x4 enum _BUS_DATA_TYPE ConfigurationType; //0x8 ULONG BusNumber; //0xc struct _DEVICE_OBJECT* DeviceObject; //0x10 struct _BUS_HANDLER* ParentHandler; //0x18 VOID* BusData; //0x20 ULONG DeviceControlExtensionSize; //0x28 struct _SUPPORTED_RANGES* BusAddresses; //0x30 ULONG Reserved[4]; //0x38 ULONG (*GetBusData)(struct _BUS_HANDLER* arg1, struct _BUS_HANDLER* arg2, ULONG arg3, VOID* arg4, ULONG arg5, ULONG arg6); //0x48 ULONG (*SetBusData)(struct _BUS_HANDLER* arg1, struct _BUS_HANDLER* arg2, ULONG arg3, VOID* arg4, ULONG arg5, ULONG arg6); //0x50 LONG (*AdjustResourceList)(struct _BUS_HANDLER* arg1, struct _BUS_HANDLER* arg2, struct _IO_RESOURCE_REQUIREMENTS_LIST** arg3); //0x58 LONG (*AssignSlotResources)(struct _BUS_HANDLER* arg1, struct _BUS_HANDLER* arg2, struct _UNICODE_STRING* arg3, struct _UNICODE_STRING* arg4, struct _DRIVER_OBJECT* arg5, struct _DEVICE_OBJECT* arg6, ULONG arg7, struct _CM_RESOURCE_LIST** arg8); //0x60 ULONG (*GetInterruptVector)(struct _BUS_HANDLER* arg1, struct _BUS_HANDLER* arg2, ULONG arg3, ULONG arg4, UCHAR* arg5, ULONGLONG* arg6); //0x68 UCHAR (*TranslateBusAddress)(struct _BUS_HANDLER* arg1, struct _BUS_HANDLER* arg2, union _LARGE_INTEGER arg3, ULONG* arg4, union _LARGE_INTEGER* arg5); //0x70 VOID* Spare1; //0x78 VOID* Spare2; //0x80 VOID* Spare3; //0x88 VOID* Spare4; //0x90 VOID* Spare5; //0x98 VOID* Spare6; //0xa0 VOID* Spare7; //0xa8 VOID* Spare8; //0xb0 };